Data decompression technique for image processing

ABSTRACT

The present invention provides a fast data converter for decoding compressed image data. This is accomplished by using a series of parallel and serial computational steps to decompress the compressed image data and reduce processing cycle time. The high speed decoder receives the input data stream including first and second parameters having initial values and which are representative of properties of the data stream, and a third parameter having a value which is representative of a decoding property of the decoder. The decoder then decodes the initial values of the first, second, and third parameters to determine updated values of the first and second parameters by using a combination of parallel and serial processing steps. The decoder then compares the determined value of the reference parameter with the computed first subtraction value and outputs updated values for the first and second parameters based on the outcome of the comparison by the comparator to reduce decoding cycle time.

FIELD OF THE INVENTION

[0001] This invention generally relates to a high-speed data processorand decoding technique, and more particularly to a high-speed dataprocessor and decoding technique for image processing devices such asprinting, faxing, and/or scanning devices.

BACKGROUND

[0002] Data compression is a term generally used to refer to a techniquefor reducing the number of digits (or bits) required to represent imagedata. Image data can be compressed using a known data compressiontechnique, such as arithmetic or Huffman encoding, and a standard datacompression format, such as international Telecommunication Union (ITU)Group 3/4, Joint Bi-level Image experts Group (JBIG), or JointPhotographic Experts Group (JPEG). Data decompression, achieves thereverse, extracting the full image information from the compressed imagedata.

[0003] Arithmetic encoding is a well-known and efficient process forentropy encoding an input stream of image data. Entropy encoding is aprocess of compressing data (by assigning certain optimal numericalvalues called codes) based on a value of the probability of the imagedata. Arithmetic encoding is used in many data compression applicationsincluding the International Standard Organization (ISO) for JPEG andJBIG. Arithmetic decoding achieves the reverse of what the arithmeticencoding achieves by entropy decoding the encoded data stream andgenerating the image data from it. Entropy decoding is the reverseprocess of entropy encoding, wherein the data is retrieved from theassigned codes.

[0004] The maximum speed of the overall decoding process depends on theability of the decoder to perform these (and other) calculations anddecisions quickly. In existing entropy decoders however, thecomputations require a series of sequential processing steps whichinclude a subtraction operation, a subsequent comparison operation thatdepends on the results of the previous subtraction operation, andanother subsequent subtraction operation which again depends on theresults of the previous comparison operation. These types of sequentialoperations that depend on the result of a previous operation impose asignificant constraint on the decoding operation and considerably slowsdown the speed of the decoding process.

[0005] Therefore there is a need in the art for a faster decodingtechnique that does not have the dependencies inherent in theabove-described sequential process to increase the speed of the decodingprocess.

SUMMARY OF THE INVENTION

[0006] The present invention provides a high-speed decoder of compressedimage data. In one example embodiment, this is accomplished by receivingan input data stream including first and second parameters havinginitial values and which are representative of properties of the datastream, and a third parameter having a value which is representative ofa decoding property of a decoder. The decoder then determines a valuefor a reference parameter as a function of the third parameter using alookup table. In parallel, the analyzer computes first and secondsubtraction values, using initial values of the first and secondparameters. The decoder further computes an updated value for the secondparameter by adding the computed second subtraction value to thedetermined value of the reference parameter. In parallel, the decoderfurther computes an updated value for the first parameter by using theinitial value of the first parameter and the determined value for thereference parameter. In addition, the decoder compares the determinedvalue of the reference parameter with the computed first subtractionvalue and outputs updated values for the first and second parametersbased on the outcome of the comparison by the comparator.

[0007] Another aspect of the present invention is a method for decodingcompressed image data. The method is performed by receiving an inputdata stream including first and second parameters having initial valuesand which are representative of properties of the data stream, and athird parameter having a value which is representative of a decodingproperty of a decoder. A value for a reference parameter as a functionof the third parameter is determined using the initial value of thethird parameter and lookup table. In parallel, first and secondsubtraction values are computed, using initial values of the first andsecond parameters. Further, an updated value for the second parameter iscomputed by adding the computed second subtraction value to thedetermined value of the reference parameter. In parallel, an updatedvalue for the first parameter is computed using the initial value of thefirst parameter and the determined value for the reference parameter.The determined value of the reference parameter is compared with thecomputed first subtraction value, and updated values for the first andsecond parameters based on the outcome of the comparison is outputted toreduce decoding cycle time.

[0008] Another aspect of the present invention is a computer readablemedium having computer-executable instructions for improved data-ratedetection in a communication system including multiple transportchannels supporting variable data-rate transmissions. According to themethod, the process includes receiving an input data stream includingfirst and second parameters having initial values and which arerepresentative of properties of the data stream, and a third parameterhaving a value which is representative of a decoding property of adecoder. A value for a reference parameter as a function of the thirdparameter is determined using the initial value of the third parameterand a lookup table. In parallel, first and second subtraction values arecomputed, using initial values of the first and second parameters.Further, an updated value for the second parameter is computed by addingthe computed second subtraction value with the determined value of thereference parameter. In parallel, an updated value for the firstparameter is computed using initial value of the first parameter and thedetermined value for the reference parameter. The determined value ofthe reference parameter is compared with the computed first subtractionvalue, and updated values for the first and second parameters based onthe outcome of the comparison is outputted to reduce decoding cycletime.

[0009] Another aspect of the present invention is a computer system fordetecting data-rate detection signals received from a transmittercapable of transmitting data at a plurality of data rates. The computersystem comprises a storage device, an output device, and a processorprogrammed to repeatedly perform a method. The method is performed byreceiving an input data stream including first and second parametershaving initial values and which are representative of properties of thedata stream, and a third parameter having a value which isrepresentative of a decoding property of a decoder. A value for areference parameter as a function of the third parameter is determinedusing the initial value of the third parameter and lookup table. Inparallel, first and second subtraction values, using initial values ofthe first and second parameters are computed. Further, an updated valuefor the second parameter is computed by adding the computed secondsubtraction value with the determined value of the reference parameter.In parallel, an updated value for the first parameter is computed usingthe initial value of the first parameter and the determined value forthe reference parameter. The determined value of the reference parameteris compared with the computed first subtraction value, and updatedvalues for the first and second parameters based on the outcome of thecomparison is outputted to reduce decoding cycle time.

[0010] Other aspects of the invention will be apparent on reading thefollowing detailed description of the invention and viewing the drawingsthat form a part thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

[0011]FIG. 1 is a flow chart illustrating a prior-art data decompressionprocess.

[0012]FIG. 2 is a flow chart illustrating a data decompression processaccording to the principles of the invention.

[0013]FIG. 3 is a block diagram illustrating major components of adecoder used in the data decompression process shown in FIG. 2.

[0014]FIG. 4 is a block diagram illustrating major components of a dataconverter incorporating the decoder of the present invention.

[0015]FIG. 5 is a block diagram example of a suitable computing systemenvironment for implementing embodiments of the present invention, suchas those shown in FIGS. 2, 3 and 4.

DETAILED DESCRIPTION

[0016] The present invention provides an improved receiver by increasingthe efficiency and reliability of data-rate detection in a radiocommunication system including multiple transport channels supportingvariable data-rate transmissions. This is accomplished by providingcomputationally efficient and more accurate detection techniques.

[0017]FIG. 1 is a flowchart illustrating a prior-art data decompressionprocess 100 which implements an arithmetic decoding technique such asentropy decoding (see document T.82 of the TelecommunicationsStandardization Sector of the International Telecommunication Union(ITU-T.82)). During the decoding process, the decoding is performedsequentially as shown in FIG. 1 on an input stream of compressed imagedata. Three input parameters Acc, Chigh, and ST having initial valuesAcc0, Chigh0, and ST enter at step 110. The first parameter Accrepresents a size of an interval between 0 and 1, the second parameterChigh represents the bottom or base of the interval, and the thirdparameter ST represents the index value used to generate symbolprobability estimates as specified in the ITU-T.82 standard. The thirdparameter ST is used to define probability estimates and is also ageneral representation of the image data, wherein its value is obtainedand updated based on the image data and tables defined by the ITU-T.82(JBIG) standard.

[0018] Step 120 includes obtaining a reference parameter LSZ based on afunction of input parameter ST by addressing a lookup table. Step 130includes updating the initial value of Acc0 to a new value Acc1 bysubtracting the obtained reference parameter LSZ from the initial valueAcc0. It can be seen that the subtraction operation depends upon thevalue assigned to the reference parameter LSZ and cannot be performeduntil the reference parameter LSZ is obtained. In general there is aninherent delay in obtaining the value of the third parameter ST from amemory location, which in turn further delays obtaining the value ofLSZ.

[0019] Step 140 includes comparing the initial value of Chigh0 with theupdated new value Acc1. Again, the comparison at step 140 depends on theupdated new value Acc1 and cannot be performed until the previoussubtraction operation shown in Step 130 is completed. If Chigh0 isgreater than or equal to the value Acc1, then the initial value Chigh0is updated to a new value Chigh1, by subtracting the initial valueChigh0 from the new value Acc1 at step 150. Then at step 160 the processincludes outputting with the new values Acc1 and Chigh1 for parametersAcc and Chigh, respectively. If however Chigh0 is less than the newvalue Acc1 then the process includes outputting the new value Acc1 forparameter Acc and the initial value Chigh0 for parameter Chigh. Onceagain, the downstream operations at steps 150 and 160 depend upon theoutcome of the comparison at step 140.

[0020] Due to the dependencies in the sequential steps described above,there is delay in obtaining ST, obtaining LSZ, computing Acc1, comparingChigh0 with Acc1, and lastly in computing Chigh1. Therefore there arearound five sequential delays in the above described prior-art process.Generally, these delays increase in each of the steps 120, 130, 140, and150 due to the dependencies between each sequential step in the priorart process. As such, it is difficult to improve the processing speed(or cycle time) of the decoder in software or hardware implementationsof this process.

[0021]FIG. 2 is a flowchart illustrating a data decompression process200 which implements an arithmetic decoding technique such as entropydecoding (see document T.82 of the Telecommunications StandardizationSector of the International Telecommunication Union (ITU-T.82))according to the teachings of the present invention. During the decodingprocess, the decoding is performed in parallel and serial steps as shownin FIG. 2 on an input stream of compressed image data to reduce decodingcycle time. Three input parameters Acc, Chigh, and ST having initialvalues Acc0, Chigh0, and ST enter at step 210. The first parameter Accrepresents a size of an interval between 0 and 1, the second parameterChigh represents the bottom or base of the interval, and the thirdparameter ST represents the index value used to generate symbolprobability estimates as specified in the ITU-T.82 standard. The thirdparameter ST is used to define probability estimates and is also ageneral representation of the image data wherein its value is obtainedand updated based on the image data and tables defined by the ITU-T.82(JBIG) standard. In another embodiment, the initial value for the firstparameter represents the size of an interval. In some embodiments, theinitial value for the second parameter represents the base of theinterval. In some embodiments, the initial value for the third parameterrepresents an index value used to generate symbol probability estimatesas specified in the ITU-T.82 standard.

[0022] Step 220 generally includes parallel computing steps 221, 222,and 223 obtaining a value for a reference parameter LSZ based on afunction of input parameter ƒ(ST) by addressing a lookup table, andcomputing first and second subtraction values A1 and B1, respectivelyusing initial values of the first and second parameters as follows:

A1=Acc0−Chigh0

B1=Chigh0−Acc0

[0023] Step 230 generally includes parallel computing steps 231, and 232to update the value of the second parameter by adding the computedsecond subtraction value B1 to the determined value of the referenceparameter LSZ, and to further update the value of the first parameterusing initial value of the first parameter Acc0 and the determined valuefor the reference parameter LSZ, respectively.

[0024] In other embodiments, the first subtraction value A1 is computedby subtracting the value of the second parameter from the firstparameter, and the second subtraction value B1 is computed bysubtracting the value of the fist parameter from the second parameter.In other embodiments, the updated value for the first parameter Acc1 iscomputed by using the initial value of the first parameter and thedetermined value for the reference parameter as follows:

Acc1=Acc0−LSZ

[0025] Step 240 includes comparing the determined value of the referenceparameter LSZ with the computed first subtraction value A1. In someembodiments, Step 240 is performed in parallel with Steps 231 and 232.Step 250 includes outputting the updated values for the first and secondparameters based on the outcome of the comparison.

[0026] In some embodiments, step 240 includes outputting the updatedvalue of the first parameter and the initial value of the secondparameter when the determined value of the reference parameter is lessthan the computed first subtraction value as follows.

Acc1=Acc0−LSZ

Chigh1=Chigh0

[0027] Step 240 further includes outputting updated values of the firstand second parameters when the determined value of the referenceparameter is not less than the computed first subtraction value asfollows:

Acc1=LSZ

Chigh1=B1+LSZ

[0028] It can be seen that the above-described decoding process 200includes performing steps 210-250 in parallel and serial as shown inFIG. 2 on an input stream of compressed image data. The parallel andserial steps in the decoding process 200 shown in FIG. 2 reduces thenumber of dependencies present in the sequential processing stepspresent in the prior art decoding process 100 to enhance processingtime. The decoding process 200 shown in FIG. 2 reduces the approximatelyfive sequential delays present in the prior-art process 100 shown inFIG. 1 to around 3.

[0029]FIG. 3 is a block diagram of the data converter 300 for datadecompression according to the principles of the invention. Shown inFIG. 3 are input module 310, analyzer 320, comparator 330, output module340, context generator 345, context memory 350, and compressed imagedata 305.

[0030] In operation, the input module 310 receives compressed image data(encoded image data) 305 in the form of an input data stream includingfirst and second parameters having initial values which arerepresentative of properties of the data stream, and a third parameterhaving a value which is representative of a decoding property of thedecoder 300. In some embodiments, the initial value for the firstparameter represents the size of an interval. In some embodiments, theinitial value for the second parameter represents the base of theinterval. In some embodiments, the initial value for the third parameterrepresents an index value used to generate symbol probability estimatesas specified in the ITU-T.82 standard. In some embodiments, the thirdparameter represents the decoding state and is used to determine thereference parameter using the lookup table.

[0031] The analyzer 320 connected to the input module 310 determines avalue for a reference parameter as a function of the third parameterusing a lookup table. Further, in parallel, the analyzer 320 computesfirst and second subtraction values, using initial values of the firstand second parameters. The analyzer 320 then computes an updated valuefor the second parameter by adding the computed second subtraction valueto the determined value of the reference parameter. Further, theanalyzer 320 computes in parallel an updated value for the firstparameter by using the initial value of the first parameter and thedetermined value for the reference parameter. In some embodiments, theanalyzer 320 computes the first subtraction value by subtracting thesecond parameter from the first parameter, computes the secondsubtraction value by subtracting the first parameter from the secondparameter, and further computes an updated value for the first parameterby using the initial value of the first parameter and the determinedvalue for the reference parameter.

[0032] The comparator 330 connected to the analyzer 320 compares thedetermined value of the reference parameter with the computed firstsubtraction value, and the output module 340 connected to the analyzer320 outputs updated values of the first and second parameters based onthe outcome of the comparison by the comparator to reduce the processingtime and the decoding cycle time. In some embodiments, the output module340 outputs the updated value for the first parameter with a valueobtained by subtracting the determined value for the reference parameterfrom the initial value of the first parameter and the initial value forthe second parameter when the determined value of the referenceparameter is less than the computed first subtraction value. In furtherembodiments, the output module 340 updates the value of the firstparameter with the determined reference value of the reference parameterand the second parameter by adding the second subtraction value to thedetermined reference parameter when the determined value of referenceparameter is not less than the first subtraction value.

[0033] In some embodiments, the output module 340 outputs the updatedvalues for the first and second parameters when the determined value ofthe reference parameter is greater than the computed first subtractionvalue. In further embodiments, the output module 340 updates the valueof the first parameter by using the determined value of the referenceparameter, and further updates the value of the second parameter with avalue obtained by adding the first subtraction value to the determinedvalue of the reference parameter.

[0034] The analyzer 320 combines the above-described parallel and serialcomputation sequences to reduce processing cycle time. In someembodiments, the data converter 300 uses the context memory 350 to storereference parameters in the lookup table. In a further embodiment, thedata converter includes a context generator 345 coupled to the contextmemory 350 and the output module 340. The context generator 345 is alogic used in the generation of addresses for the context memory 350,which in turn generates the input parameter ST. In another embodiment,the context generator 345 is shared between an encoder and a decoder ingeneration of addresses used to access the context memory 350.

[0035]FIG. 4 is a block diagram illustrating major components of a dataconverter 400 incorporating the decoder 410 of the present invention andan encoder 420 on an integrated circuit device. As shown in FIG. 4, thedata converter includes encoder 420, decoder 410, and a logic such asthe context generator 345 and the context memory 350 related to thegeneration and storing of the input parameter ST 445 is shared betweenthe decoder 410 and the encoder 420. This sharing of the contextgenerator 345 and the context memory 350 results in reduction of thesize of the device. The encoder 420 includes an encoder core 422 and arenormalization module 460. Shown in FIG. 4 is inputting of the imagedata into the encoder core 422 (coming from context generator 345).Compressed (encoded) data is output through an output module 425 coupledto the encoder 420. As shown in FIG. 4, the data converter 400 includesa destuff processor 450 which receives the external input encoded datafrom the encoder 420 and feeds it to the decoder 410. The decoder 410includes decoder core 412 and renormalization module 460. The decodercore 412 receives the encoded data from the destuff processor throughthe renormalization module 460, performs decompression of the encodeddata and outputs the decompressed (decoded) data for use in imageprocessing devices such as printers, faxes, scanning and/or other suchdevices through context generator 345. As shown in FIG. 4, the decoder410 shares the context memory 350 in obtaining a value for the referenceparameter as a function of the third parameter using the lookup table.The renormalization modules 460 shown in FIG. 4 are a combinatoriallogic performing an internal parametric information update as specifiedby the ITU-T.82 JBIG standard renormalization routine for the decoder410 and the encoder 420.

[0036] The method 200 shown in FIG. 2 may be implemented in input module310, analyzer 320, comparator 330, output module 340, context generator345 and context memory 350 as shown in FIG. 2. Various aspects of thepresent invention are implemented in software, which is executed in theenvironment shown in FIG. 5 or any other suitable computing environment.The present invention is operable in a number of other general purposeor special purpose computing environments. Some computing environmentsare personal computers, general-purpose computers, server computers,hand held devices, laptop devices, multiprocessors, microprocessors, settop boxes, programmable consumer electronics, network PCs,minicomputers, mainframe computers, distributed computing environmentsand the like to execute the code, which is stored on a computer readablemedium. The present invention may be implemented in part or in whole ascomputer-executable instructions, such as program modules that areexecuted by a computer. Generally, program modules include routines,programs, objects, components, data structures and the like to performparticular tasks or to implement particular abstract data types. In adistributed computing environment, program modules may be located inlocal or remote storage devices.

[0037]FIG. 5 shows an example of a suitable computing system environment500 for implementing embodiments of the present invention, such as thoseshown in FIGS. 2, 3 and 4. Various aspects of the present invention areimplemented in software, which may be run in the environment shown inFIG. 5 or any other suitable computing environment. The presentinvention is operable in a number of other general purpose or specialpurpose computing environments. Some computing environments are personalcomputers, server computers, hand-held devices, laptop devices,multiprocessors, microprocessors, set top boxes, programmable consumerelectronics, network PCs, minicomputers, mainframe computers,distributed computing environments, and the like. The present inventionmay be implemented in part or in whole as computer-executableinstructions, such as program modules that are executed by a computer.Generally, program modules include routines, programs, objects,components, data structures and the like to perform particular tasks orto implement particular abstract data types. In a distributed computingenvironment, program modules may be located in local or remote storagedevices.

[0038]FIG. 5 shows a general computing device in the form of a computer510, which may include a processing unit 502, memory 504, removablestorage 512, and non-removable storage 514. The memory 504 may includevolatile 506 and non-volatile memory 508. Computer 510 may include—orhave access to a computing environment that includes—a variety ofcomputer-readable media, such as volatile 506 and non-volatile memory508, removable 512 and non-removable storage 514. Computer-readablemedia also include carrier waves, which are used to transmit executablecode between different devices by means of any type of network. Computerstorage includes RAM, ROM, EPROM & EEPROM, flash memory or other memorytechnologies, CD ROM, Digital Versatile Disks (DVD) or other opticaldisk storage, magnetic cassettes, magnetic tape, magnetic disk storageor other magnetic storage devices, or any other medium capable ofstoring computer-readable instructions. Computer 510 may include or haveaccess to a computing environment that includes input 516, output 518,and a communication connection 520. The computer may operate in anetworked environment using a communication connection to connect to oneor more remote computers. The remote computer may include a personalcomputer, server, router, network PC, a peer device or other commonnetwork node, or the like. The communication connection may include aLocal Area Network (LAN), a Wide Area Network (WAN) or other networks.

Conclusion

[0039] The above-described invention provides a fast decoding techniquethat does not have the dependencies inherent in the prior-art sequentialprocesses in order to increase the speed of the decoding process.Although, the above-described invention is for a decoder, the principlesof the invention can be incorporated in to an encoder to enhance thedata compression process in high-resolution image processing.

[0040] The above description is intended to be illustrative, and notrestrictive. Many other embodiments will be apparent to those skilled inthe art. The scope of the invention should therefore be determined bythe appended claims, along with the full scope of equivalents to whichsuch claims are entitled.

What is claimed is:
 1. A method of decoding compressed image data,comprising: receiving compressed image data; and arithmetic decoding ofthe received compressed image data, wherein the arithmetic decoding ofthe received data includes a combination of parallel and serialprocessing steps to reduce processing time.
 2. The method of claim 1,wherein receiving the compressed image data further comprises: receivingan input data stream including first and second parameters havinginitial values and which are representative of properties of the datastream, and a third parameter having a value which is representative ofa decoding property of a decoder.
 3. The method of claim 2, whereindecoding the received compressed image data further comprises:determining a value for a reference parameter as a function of the thirdparameter using a lookup table, in parallel, computing first and secondsubtraction values using initial values of the first and secondparameters; computing an updated value for the second parameter byadding the computed second subtraction value to the determined value ofthe reference parameter, in parallel, computing an updated value for thefirst parameter using the initial value of the first parameter and thedetermined value for the reference parameter; comparing the determinedvalue of the reference parameter with the computed first subtractionvalue; and outputting the updated values for the first and secondparameters based on the outcome of the comparison.
 4. The method ofclaim 3, wherein computing the first and second subtraction values, andfurther computing an updated value for the first parameter furthercomprises: computing a first subtraction value by subtracting the secondparameter from the first parameter; computing a second subtraction valueby subtracting the first parameter from the second parameter; andcomputing an updated value for the first parameter by using the initialvalue of the first parameter and the determined value for the referenceparameter.
 5. The method of claim 4, wherein outputting the updatedvalues of the first and second parameters further comprises: if thedetermined value of the reference parameter is less than the computedfirst subtraction value, then outputting the updated value for the firstparameter and the initial value for the second parameter; and if thedetermined value of the reference parameter is not less than thecomputed first subtraction value, then outputting the updated values forthe first and second parameters.
 6. The method of claim 3, whereincombination of parallel and serial processing steps provides a reducedprocessing cycle time.
 7. The method of claim 3, wherein the initialvalue for the first parameter represents the size of an interval.
 8. Themethod of claim 3, wherein the initial value for the second parameterrepresents the base of the interval.
 9. The method of claim 3, whereinthe initial value for the third parameter represents an index value usedto generate symbol probability estimates as specified in the ITU-T.82standard.
 10. A computer readable medium having computer-executableinstructions for decoding compressed image data, comprising: receivingan input data stream including first and second parameters havinginitial values which are representative of properties of the datastream, and a third parameter having a value which is representative ofa decoding property of a decoder; determining a value for a referenceparameter as a function of the third parameter using a lookup table, inparallel, computing first and second subtraction values using initialvalues of the first and second parameters; computing an updated valuefor the second parameter by adding the computed second subtraction valueto the determined value of the reference parameter, in parallel,computing an updated value for the first parameter using the initialvalue of the first parameter and the determined value for the referenceparameter, comparing the determined value of the reference parameterwith the computed first subtraction value; and outputting the updatedvalues for the first and second parameters based on the outcome of thecomparison.
 11. The medium of claim 10, wherein computing the first andsecond subtraction values, and further computing an updated value forthe first parameter comprises: computing a first subtraction value bysubtracting the second parameter from the first parameter; computing asecond subtraction value by subtracting the first parameter from thesecond parameter; and computing an updated value for the first parameterby using initial value of the first parameter and the determined valuefor the reference parameter.
 12. The medium of claim 11, whereinoutputting the updated values of the first and second parameters furthercomprises: if the determined value of the reference parameter is lessthan the computed first subtraction value, then outputting the updatedvalue for the first parameter and the initial value for the secondparameter; and if the determined value of the reference parameter is notless than the computed first subtraction value, then outputting theupdated values for the first and second parameters.
 13. The medium ofclaim 11, wherein the combination of parallel and serial processingsteps provides a reduced processing cycle time.
 14. The medium of claim11, wherein the initial value for the first parameter represents thesize of an interval.
 15. The medium of claim 11, wherein the initialvalue for the second parameter represents the base of the interval. 16.The medium of claim 11, wherein the initial value for the thirdparameter represents an index value used to generate symbol probabilityestimates as specified in the ITU-T.82 standard.
 17. A computer systemfor decoding compressed image data, comprising: a storage device; anoutput device; and a processor programmed to repeatedly perform amethod, comprising: receiving an input data stream including first andsecond parameters having initial values and which are representative ofproperties of the data stream, and a third parameter having a valuewhich is representative of a decoding property of a decoder; determininga value for a reference parameter as a function of the third parameterusing a lookup table, in parallel, computing first and secondsubtraction values using initial values of the first and secondparameters, respectively; computing an updated value for the secondparameter by adding the computed second subtraction value to thedetermined value of the reference parameter, in parallel, computing anupdated value for the first parameter using the initial value of thefirst parameter and the determined value for the reference parameter;comparing the determined value of the reference parameter with thecomputed first subtraction value; and outputting the updated values forthe first and second parameters based on the outcome of the comparison.18. The system of claim 17, wherein computing the first and secondsubtraction values, and further computing an updated value for the firstparameter comprises: computing a first subtraction value by subtractingthe second parameter from the first parameter; computing a secondsubtraction value by subtracting the first parameter from the secondparameter; and computing an updated value for the first parameter byusing the initial value of the first parameter and the determined valuefor the reference parameter.
 19. The system of claim 18, whereinoutputting the updated values of the first and second parameters furthercomprises: if the determined value of the reference parameter is lessthan the computed first subtraction value, then outputting the updatedvalue for the first parameter and the initial value for the secondparameter; and if the determined value of the reference parameter is notless than the computed first subtraction value, then outputting theupdated values for the first and second parameters.
 20. The system ofclaim 17, wherein combination of parallel and serial processing stepsprovides a reduced processing cycle time.
 21. The system of claim 17,wherein the initial value for the first parameter represents the size ofan interval.
 22. The system of claim 17, wherein the initial value forthe second parameter represents the base of the interval.
 23. The systemof claim 17, wherein the initial value for the third parameterrepresents an index value used to generate symbol probability estimatesas specified in the ITU-T.82 standard.
 24. A high-speed data converterfor decoding compressed image data, comprising: an input module toreceive an input data stream including first and second parametershaving initial values which are representative of properties of the datastream, and a third parameter having a value which is representative ofa decoding property of a decoder; an analyzer to determine a value for areference parameter as a function of the third parameter using a lookuptable, in parallel, the analyzer to compute first and second subtractionvalues, using initial values of the first and second parameters, whereinthe analyzer further computes an updated value for the second parameterby adding the computed second subtraction value to the determined valueof the reference parameter, in parallel, the analyzer to further computean updated value for the first parameter by using the initial value ofthe first parameter and the determined value for the referenceparameter; a comparator to compare the determined value of the referenceparameter with the computed first subtraction value; and an outputmodule to output updated values of the first and second parameters basedon the outcome of the comparison by the comparator.
 25. The dataconverter of claim 24, wherein the analyzer computes the firstsubtraction value by subtracting the second parameter from the firstparameter, computes the second subtraction value by subtracting thefirst parameter from the second parameter, and computes an updated valuefor the first parameter by using the initial value of the firstparameter and the determined value for the reference parameter.
 26. Thedata converter of claim 25, wherein the output module outputs an updatedvalue for the first parameter and the initial value for the secondparameter when the determined value of the reference parameter is lessthan the computed first subtraction value, and wherein the dataconverter updates value of the first parameter with a value obtained bysubtracting the determined value for the reference parameter from theinitial value of the first parameter.
 27. The data converter of claim26, wherein the output module outputs the updated values for the firstand second parameters when the determined value of the referenceparameter is not less than the computed first subtraction value, andwherein the data converter further updates the value of the firstparameter by using the determined value of the reference parameter andfurther updates the value of the second parameter with a value obtainedby adding the first subtraction value with the determined value of thereference parameter.
 28. The data converter of claim 24, wherein theanalyzer combines parallel and serial computation to reduce processingcycle time.
 29. The data converter of claim 24, wherein the initialvalue for the first parameter represents the size of an interval. 30.The data converter of claim 24, wherein the initial value for the secondparameter represents the base of the interval.
 31. The data converter ofclaim 24, wherein the initial value for the third parameter representsan index value used to generate symbol probability estimates asspecified in the ITU-T.82 standard.
 32. The data converter of claim 24,wherein the initial value for the third parameter represents thedecoding state and is used to determine the reference parameter usingthe lookup table.
 33. The data converter of claim 24, further comprisinga context memory to store reference parameters in the lookup table. 34.The data converter of claim 32, further comprising a context generatorto generate addresses for the context memory.